#include <stdio.h>
#include <stdlib.h>

#include"string.h"
#define MAX 100


int a;
int b;
int c;

struct personnel{
char id[6];
};

struct suivi {
char id[6];
char capt[6];
};



struct acces{
char heure[9];
char id[6];
char capt[6];

};

struct acces tab1 [MAX];
struct personnel tab2 [MAX];
struct suivi tab3 [MAX];
struct suivi tab4 [MAX];

void lecture_fichier(char arg1[]);
void lecture_personnels(char arg2[]);
void lecture_suivi(char arg3[]);
void comparer();

int main()
{
char arg1[]="fichier.txt";
char arg2[]="personne.txt";
char arg3[]="suivi.txt";
lecture_fichier(arg1);
lecture_personnels(arg2);
lecture_suivi(arg3);
printf("**********BILAN************ \n");
comparer();

return 0;
}

void lecture_fichier(char arg1[]){
int n;
int j,i=0;


struct acces P;

FILE *f;
f=fopen(arg1,"r");
if(f==NULL){
printf("\n Impossible d'ouvrir le fichier %s",arg1);
}else{
while( fscanf(f,"%s%s%s",P.heure,P.id,P.capt) !=EOF)
{


tab1[i]=P;
i++;
}
a=i;
n=i;

}

fclose(f);
}



void lecture_personnels(char arg1[]){
int n;
int j=0,i=0;

struct personnel k;
FILE *f;
f=fopen(arg1,"r");
if(f==NULL){
printf("\n Impossible d'ouvrir le fichier %s",arg1);
}else{
while( fscanf(f,"%s",k.id) !=EOF)
{
tab2[i]=k;
i++;
}

c=i;
n=i;

}
fclose(f);
}

void lecture_suivi(char arg1[]){
int n;
int j=0,i=0;
struct suivi k;
FILE *f;
f=fopen(arg1,"r");
if(f==NULL){
printf("\n Impossible d'ouvrir le fichier %s",arg1);
}else{
while( fscanf(f,"%s%s",k.id,k.capt) !=EOF)
{
tab4[i]=k;
i++;
}
b=i;
n=i;

}
fclose(f);
}




void comparer(){
int i,j,k;
int nb_capteur;
for (i=0;i<c;i++){
char ch1[64];
char ch2[64];
char Pout;
strcpy(ch1,"E01C01S01L01L02C02V01I01D01B01M01Sout");
memset (ch2, 0, sizeof (ch2));
nb_capteur=0;
 for (j=0;j<a;j++)
 {
  if(strcmp(tab2[i].id, tab1[j].id)==0) 
   {
    strcat(ch2,tab1[j].capt);
nb_capteur=nb_capteur+1;
if(strcmp(tab1[j].capt, "Pout")==0)
printf("\nle personnel %s a sorti a travers la barriere de la clinique\n",tab1[j].id);
if(strcmp(tab1[j].capt,"Ebola")==0)
printf("\n le personnel %s est probablement affecte de l'ebola\n",tab1[j].id);

   }
}
printf("ch1= %s  \n",ch1);
printf("ch2= %s  \n\n",ch2);
 



if(strcmp(ch1,ch2)== 0){
printf("le personnel %s  a parcouru le chemin parfaitement  \n",tab2[i].id);
printf("nombre de capteurs passes %d \n",nb_capteur);
}else {
printf("Attention detection d'erreurs le personnel %s n a pas suivi l enchainement des capteurs \n",tab2[i].id);
printf("nombre de capteurs passes %d \n",nb_capteur);
}
}
}


